clear the extra_attrs list if we set "text" after "markup". (Fixes
authorKristian Rietveld <kris@gtk.org>
Thu, 18 Dec 2003 16:55:58 +0000 (16:55 +0000)
committerKristian Rietveld <kristian@src.gnome.org>
Thu, 18 Dec 2003 16:55:58 +0000 (16:55 +0000)
Thu Dec 18 17:52:56 2003  Kristian Rietveld  <kris@gtk.org>

* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property):
clear the extra_attrs list if we set "text" after "markup".
(Fixes #121933, Federico Mena Quintero).

ChangeLog
ChangeLog.pre-2-10
ChangeLog.pre-2-4
ChangeLog.pre-2-6
ChangeLog.pre-2-8
gtk/gtkcellrenderertext.c

index f6d411f264d6eec11084b655ad8ff2507298cd86..a480a0b600feea951a3746d04279e89d241fdd24 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Thu Dec 18 17:52:56 2003  Kristian Rietveld  <kris@gtk.org>
+
+       * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property):
+       clear the extra_attrs list if we set "text" after "markup".
+       (Fixes #121933, Federico Mena Quintero).
+
 2003-12-18  Alexander Larsson  <alexl@redhat.com>
 
        * gtk/gtkicontheme.c (gtk_icon_info_get_embedded_rect):
index f6d411f264d6eec11084b655ad8ff2507298cd86..a480a0b600feea951a3746d04279e89d241fdd24 100644 (file)
@@ -1,3 +1,9 @@
+Thu Dec 18 17:52:56 2003  Kristian Rietveld  <kris@gtk.org>
+
+       * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property):
+       clear the extra_attrs list if we set "text" after "markup".
+       (Fixes #121933, Federico Mena Quintero).
+
 2003-12-18  Alexander Larsson  <alexl@redhat.com>
 
        * gtk/gtkicontheme.c (gtk_icon_info_get_embedded_rect):
index f6d411f264d6eec11084b655ad8ff2507298cd86..a480a0b600feea951a3746d04279e89d241fdd24 100644 (file)
@@ -1,3 +1,9 @@
+Thu Dec 18 17:52:56 2003  Kristian Rietveld  <kris@gtk.org>
+
+       * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property):
+       clear the extra_attrs list if we set "text" after "markup".
+       (Fixes #121933, Federico Mena Quintero).
+
 2003-12-18  Alexander Larsson  <alexl@redhat.com>
 
        * gtk/gtkicontheme.c (gtk_icon_info_get_embedded_rect):
index f6d411f264d6eec11084b655ad8ff2507298cd86..a480a0b600feea951a3746d04279e89d241fdd24 100644 (file)
@@ -1,3 +1,9 @@
+Thu Dec 18 17:52:56 2003  Kristian Rietveld  <kris@gtk.org>
+
+       * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property):
+       clear the extra_attrs list if we set "text" after "markup".
+       (Fixes #121933, Federico Mena Quintero).
+
 2003-12-18  Alexander Larsson  <alexl@redhat.com>
 
        * gtk/gtkicontheme.c (gtk_icon_info_get_embedded_rect):
index f6d411f264d6eec11084b655ad8ff2507298cd86..a480a0b600feea951a3746d04279e89d241fdd24 100644 (file)
@@ -1,3 +1,9 @@
+Thu Dec 18 17:52:56 2003  Kristian Rietveld  <kris@gtk.org>
+
+       * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property):
+       clear the extra_attrs list if we set "text" after "markup".
+       (Fixes #121933, Federico Mena Quintero).
+
 2003-12-18  Alexander Larsson  <alexl@redhat.com>
 
        * gtk/gtkicontheme.c (gtk_icon_info_get_embedded_rect):
index 9af6543c5329ffd063dcf5754997227fafe2911d..a4e18c284ec51f2b21e9c609afbbcbfff5f788bc 100644 (file)
@@ -123,6 +123,7 @@ struct _GtkCellRendererTextPrivate
 {
   guint single_paragraph : 1;
   guint language_set : 1;
+  guint markup_set : 1;
 
   gulong focus_out_id;
   PangoLanguage *language;
@@ -870,6 +871,15 @@ gtk_cell_renderer_text_set_property (GObject      *object,
     case PROP_TEXT:
       if (celltext->text)
         g_free (celltext->text);
+
+      if (priv->markup_set)
+        {
+          if (celltext->extra_attrs)
+            pango_attr_list_unref (celltext->extra_attrs);
+          celltext->extra_attrs = NULL;
+          priv->markup_set = FALSE;
+        }
+
       celltext->text = g_strdup (g_value_get_string (value));
       g_object_notify (object, "text");
       break;
@@ -912,6 +922,7 @@ gtk_cell_renderer_text_set_property (GObject      *object,
 
        celltext->text = text;
        celltext->extra_attrs = attrs;
+        priv->markup_set = TRUE;
       }
       break;